﻿//PlazaIndexColumns.cs
//Copyright (c) 2013 StockSharp LLC, all rights reserved.
//This code module is part of StockSharp library.
//This code is licensed under the GNU GENERAL PUBLIC LICENSE Version 3.
//See the file License.txt for the license details.
//More info on: http://stocksharp.com

using System;

namespace StockSharp.Plaza.Metadata
{
	/// <summary>
	/// Поток RTS_INDEX_REPL - Биржевые индексы.
	/// Таблица rts_index - Таблица индексов.
	/// </summary>
	public class PlazaIndexColumns : PlazaColumns
	{
		internal PlazaIndexColumns()
			: this(PlazaTableSystemName.Index)
		{			
		}

        internal PlazaIndexColumns(string tableId)
            : base(tableId)
        {
            Name = new PlazaColumn(TableId, "name", "c25");
            Moment = new PlazaColumn(TableId, "moment", typeof(DateTime));
            Value = new PlazaColumn(TableId, "value", "d18.4");
            PrevCloseValue = new PlazaColumn(TableId, "prev_close_value", "d18.4");
            OpenValue = new PlazaColumn(TableId, "open_value", "d18.4");
            MaxValue = new PlazaColumn(TableId, "max_value", "d18.4");
            MinValue = new PlazaColumn(TableId, "min_value", "d18.4");
			UsdRate = new PlazaColumn(TableId, "usd_rate", "d10.4", false);
			Cap = new PlazaColumn(TableId, "cap", "d18.4", false);
			Volume = new PlazaColumn(TableId, "volume", "d18.4", false);
        }

		/// <summary>
		/// Имя индекса.
		/// </summary>
		public readonly PlazaColumn Name;

		/// <summary>
		/// Момент последнего расчета.
		/// </summary>
		public readonly PlazaColumn Moment;

		/// <summary>
		/// Значение индекса.
		/// </summary>
		public readonly PlazaColumn Value;

		/// <summary>
		/// Значение индекса на закрытие предыдущей торговой сессии.
		/// </summary>
		public readonly PlazaColumn PrevCloseValue;

		/// <summary>
		/// Значение индекса на открытие текущей торговой сессии.
		/// </summary>
		public readonly PlazaColumn OpenValue;

		/// <summary>
		/// Максимальное значение индекса в течение текущей торговой сессии.
		/// </summary>
		public readonly PlazaColumn MaxValue;

		/// <summary>
		/// Минимальное значение индекса в течение текущей торговой сессии.
		/// </summary>
		public readonly PlazaColumn MinValue;

		/// <summary>
		/// Для индексов, в которых учитываются как рублевые, так и долларовые цены инструментов – курс рубля к доллару, использовавшийся для расчета.
		/// </summary>
		public readonly PlazaColumn UsdRate;

		/// <summary>
		/// Капитализация бумаг, входящих в индекс.
		/// </summary>
		public readonly PlazaColumn Cap;

		/// <summary>
		/// Объём сделок, входящих в индекс.
		/// </summary>
		public readonly PlazaColumn Volume;
	}
}